//定义：是解决两个软件实体间的接口不兼容的问题 对不兼容的部分进行适配
//核心：解决两个已有接口之间不匹配的问题

//实现：比如一个简单的数据格式转换的适配器
//渲染数据 格式限制为数组
function renderData(data){
    data.forEach(element => {
        console.log(element)
    });
}

//对非数组的进行转换适配
function arrayAdapter(data){
    if(typeof data !== 'object'){
        return [];
    }
    if(Object.prototype.toString.call(data)==='[object Array]'){
        return data;
    }

    var temp = []
    for(var item in data){
        if(data.hasOwnProperty(item)){
            temp.push(data[item])
        }
    }
    return temp
}

var data = {
    0: 'A',
    1: 'B',
    2: 'C'
};

renderData(arrayAdapter(data)); // A B C